home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 25 / AACD 25.iso / AACD / Magazine / Online / QMail / docs / UPGRADE < prev    next >
Encoding:
Text File  |  1997-04-15  |  5.8 KB  |  146 lines

  1. SAVE COPIES OF YOUR OUTGOING MAIL! Like any other piece of software (and
  2. information generally), the qmail system comes with NO WARRANTY. It's
  3. much more secure and reliable than sendmail, but that's not saying much.
  4.  
  5.  
  6. Here's how to upgrade from qmail 1.00 to qmail 1.01. This procedure will
  7. overwrite the old qmail binaries. Furthermore, it may begin delivering
  8. messages from the queue before you have had a chance to test it.
  9.  
  10.  
  11. WARNING: The qmail-start command line has changed.
  12.  
  13.  
  14. Before starting, compare conf* to your old conf*, and make any necessary
  15. changes. Do not copy your old conf*; the baseline has changed.
  16.  
  17.  
  18. How to install:
  19.  
  20.  1. Compile the programs:
  21.        # make
  22.  2. Create the formatted man pages, *.0:
  23.        # make man
  24.  3. Inform your users that mail will not be accepted for a few minutes.
  25.  4. Disable deliveries by killing your old qmail-send. Wait for it to
  26.     print ``exiting'' in the log.
  27.  5. Disable SMTP service by commenting out the smtp line in inetd.conf;
  28.     kill -HUP your inetd. (If you are using tcpserver, simply kill -STOP
  29.     your tcpserver.) Wait for current qmail-smtpd processes to die. (If
  30.     you are running a QMTP server, disable that too.)
  31.  6. Install the new binaries and man pages:
  32.        # rm /var/qmail/bin/* /var/qmail/man/*/*
  33.        # make setup
  34.  7. Run instcheck to make sure it doesn't print any warnings:
  35.        # make check
  36.  8. Reenable deliveries:
  37.        # env - PATH="/var/qmail/bin:$PATH" \
  38.        qmail-start ./Mailbox splogger qmail &
  39.     Make sure to include the ./ in ./Mailbox.
  40.  9. Insert ./Mailbox into the qmail-start line in your boot scripts.
  41. 10. Reenable SMTP service by restoring the smtp line in inetd.conf; kill
  42.     -HUP your inetd. (If you are using tcpserver, simply kill -CONT your
  43.     tcpserver. If you are running a QMTP server, reenable that too.)
  44.  
  45.  
  46. How to test (steps 11-17 can be done before step 10):
  47.  
  48. 11. Look for a
  49.             qmail: running
  50.     line in syslog. (The big number is a splogger timestamp.)
  51. 12. Local-local test: Send yourself an empty message. (Replace ``me''
  52.     with your username. Make sure to include the ``to:'' colon.)
  53.        % echo to: me | /var/qmail/bin/qmail-inject
  54.     The message will show up immediately in ~/Mailbox, and syslog will
  55.     show something like this:
  56.             qmail: new msg 53 
  57.             qmail: info msg 53: bytes 246 from <me@domain> qp 20345 uid 666
  58.             qmail: starting delivery 1: msg 53 to local me@domain 
  59.             qmail: delivery 1: success: did_1+0+0/
  60.             qmail: end msg 53 
  61.     (53 is an inode number; 20345 is a process ID; your numbers will
  62.     probably be different.)
  63. 13. Local-error test: Send a message to a nonexistent local address.
  64.        % echo to: nonexistent | /var/qmail/bin/qmail-inject
  65.             qmail: new msg 53 
  66.             qmail: info msg 53: bytes 246 from <me@domain> qp 20351 uid 666
  67.             qmail: starting delivery 2: msg 53 to local nonexistent@domain
  68.             qmail: delivery 2: failure: No_such_address.__#5.1.1_/
  69.         qmail: bounce msg 53 qp 20357
  70.             qmail: end msg 53 
  71.             qmail: new msg 54 
  72.             qmail: info msg 54: bytes 743 from <> qp 20357 uid 666
  73.             qmail: starting delivery 3: msg 54 to local me@domain
  74.             qmail: delivery 3: success: did_1+0+0/
  75.             qmail: end msg 54 
  76.     You will now have a bounce message in ~/Mailbox.
  77. 14. Local-remote test: Send an empty message to your account on another
  78.     machine.
  79.        % echo to: me@wherever | /var/qmail/bin/qmail-inject
  80.             qmail: new msg 53 
  81.             qmail: info msg 53: bytes 246 from <me@domain> qp 20372 uid 666
  82.             qmail: starting delivery 4: msg 53 to remote me@wherever
  83.             qmail: delivery 4: success: 1.2.3.4_accepted_message./...
  84.             qmail: end msg 53 
  85.     There will be a pause between ``starting delivery'' and ``success'';
  86.     SMTP is slow. Check that the message is in your mailbox on the other
  87.     machine.
  88. 15. Local-postmaster test: Send mail to postmaster, any capitalization.
  89.        % echo to: POSTmaster | /var/qmail/bin/qmail-inject
  90.     Look for the message in ~alias/Mailbox.
  91. 16. Double-bounce test: Send a message with a completely bad envelope.
  92.        % /var/qmail/bin/qmail-inject -f nonexistent
  93.        To: unknownuser
  94.        Subject: testing
  95.  
  96.        This is a test. This is only a test.
  97.        %
  98.     (Use end-of-file, not dot, to end the message.) Look for the double
  99.     bounce in ~alias/Mailbox.
  100. 17. Group membership test:
  101.        % cat > ~me/.qmail-groups
  102.        |groups >> MYGROUPS; exit 0
  103.        % /var/qmail/bin/qmail-inject me-groups < /dev/null
  104.        % cat ~me/MYGROUPS
  105.     MYGROUPS will show your normal gid and nothing else. (Under Solaris,
  106.     make sure to use /usr/ucb/groups; /usr/bin/groups is broken.)
  107. 18. SMTP server test: Forge some mail locally via SMTP.
  108.        % telnet 127.0.0.1 25
  109.        Trying 127.0.0.1...
  110.        Connected to 127.0.0.1.
  111.        Escape character is '^]'.
  112.        220 domain ESMTP
  113.        helo dude
  114.        250-domain
  115.        250-PIPELINING
  116.        250 8BITMIME
  117.        mail <me@domain>
  118.        250 ok
  119.        rcpt <me@domain>
  120.        250 ok
  121.        data
  122.        354 go ahead
  123.        Subject: testing
  124.        
  125.        This is a test.
  126.        .
  127.        250 ok 812345679 qp 12345
  128.        quit
  129.        221 domain
  130.        Connection closed by foreign host.
  131.        %
  132.     Look for the message in your mailbox.
  133. 19. Remote-local test: Send yourself some mail from another machine.
  134. 20. Remote-error test: I think you can figure this one out.
  135. 21. UA test: Try sending mail, first to a local account, then to a
  136.     remote account, with your normal user agent.
  137. 22. Remote-postmaster test: Send mail from another machine to
  138.     PoStMaStEr@domain. Look for the message in ~alias/Mailbox.
  139.  
  140.  
  141. That's it! To report success:
  142.        % ( echo 'First M. Last'; cat `cat SYSDEPS` ) \
  143.          | mail djb-qst@koobera.math.uic.edu
  144. Replace First M. Last with your name. If you have questions about qmail,
  145. contact qmail@pobox.com.
  146.